.reservation-page {
    display: flex;
    flex: auto;
    background-color: #f4f4f4;

    .panel-header {
        flex: none;
        padding: 0 5/10rem 2/10rem 5/10rem;
        text-align: center;
        border-bottom-right-radius: 5/10rem;
        border-bottom-left-radius: 5/10rem;
        background-color: #fff;
        overflow: hidden;

        .panel-title {
            padding-top: 4/10rem;
            p {
                font-size: 3.906/10rem;
                height: 7/10rem;
                line-height: 7/10rem;
                border-radius: 3.5/10rem;
                color: #ffffff;
            }
        }

        .day-nav {
            padding-top: 5/10rem;
            display: flex;
            justify-content: space-between;
            align-items: center;

            .day-item {
                color: #666666;
                transition: all 200ms ease-in-out;
                &::before {
                    content: '';
                    display: inline-block;
                    position: absolute;
                    bottom: 0;
                    left: 0;
                    right: 0;
                    max-width: 0;
                    margin: 0 auto;
                    background-color: #bb239b;
                    transition: max-width 200ms ease-in-out;
                    height: 0.256/10rem;
                }

                &.active {
                    color: #bb239b;

                    &::before {
                        max-width: 100%;
                    }
                }
            }

            .date {
                font-size: 4/10rem;
            }
            .day {
                font-size: 3/10rem;
                line-height: 1;
                padding-top: 3/10rem;
                padding-bottom: 1/10rem;
            }
        }
    }

    .expert-avatar {
        position: absolute;
        top: 50%;
        left: 2.5/10rem;
        height: 19.531/10rem;
        width: 19.531/10rem;
        border-radius: 100%;
        overflow: hidden;
        background-color: #3c93f1;
        border: 1/10rem solid #fff;
        box-shadow: 0 6px 10px rgba(36, 37, 38, 0.28);
        backface-visibility: hidden;
        transform: translate3d(0, -50%, 0);
    }

    .panel-body {
        flex: auto;
        overflow: scroll;
        -webkit-overflow-scrolling: touch;

        .panel-content {
            display: flex;
            .row-wrapper {
                padding: 3/10rem 4.6/10rem 20/10rem 4.6/10rem;
                flex: auto;
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
            }
        }

        .item-wrap {
            background-color: #fff;
            border-radius: 3/10rem;
            box-shadow: 0 6px 15px rgba(36, 37, 38, 0.18);

            margin-bottom: 4.5/10rem;

            .avatar {
                position: absolute;
                top: 50%;
                transform: translateY(-50%);
                left: 2.5/10rem;
                height: 19.531/10rem;
                width: 19.531/10rem;
                border-radius: 100%;
                overflow: hidden;
                background-color: #3c93f1;
                border: 1/10rem solid #fff;
                box-shadow: 4px 3px 20px 1px rgba(0, 0, 0, .08);

            }
        }
        .content {
            //height: 23.6/10rem;
            padding: 2.25/10rem 0 3/10rem 25.531/10rem;

            .title {
                line-height: 5.156/10rem;

                .name {
                    font-size: 4.452/10rem;
                    color: #333333;
                }
                .position {
                    margin-left: 1.25/10rem;
                    color: #666666;
                    font-size: 3.125/10rem;
                    vertical-align: baseline;
                }
                .head {
                    font-size: 3.125/10rem;
                    color: #ffffff;
                    width: 16.8/10rem;
                    border-radius: 1/10rem;
                    background-color: #c3d4f2;
                    height: 5.156/10rem;
                    text-align: center;
                    display: inline-block;
                    margin-left: 4/10rem;
                    box-shadow: 2px 4px 10px rgba(36, 37, 38, 0.15);

                    &::before {
                        content: '';
                        display: inline-block;
                        position: absolute;
                        left: -2/10rem;
                        top: 50%;
                        transform: translateY(-50%);
                        width: 0;
                        height: 0;
                        border-style: solid;
                        border-width: 1.15/10rem 2/10rem 1.15/10rem 0;
                        border-color: transparent #c3d4f2 transparent transparent;
                    }
                }

            }
            .description {
                padding-top: 1.9/10rem;
                padding-right: 2/10rem;
                line-height: 1.3;
                color: #666666;
                font-size: 3.125/10rem;

                .black {
                    color: #333333;
                }
            }
        }

        .reservation {
            padding: 0 2.5/10rem 2.5/10rem 3.5/10rem;

            .box {
                border-top: .256/10rem solid #ededed;
            }

            .item {
                padding-top: 2/10rem;
                display: flex;
                align-items: center;
            }

            .button {
                justify-self: flex-end;
                flex: none;
                height: 7.25/10rem;
                line-height: 7.25/10rem;
                text-align: center;
                color: #ffffff;
                border-radius: 1.5/10rem;
                font-size: 3.841/10rem;
                width: 18/10rem;
                box-shadow: 0 4px 15px rgba(36, 37, 38, 0.18);
            }
            .text {
                font-size: 3.142/10rem;
                color: #333333;
                flex: auto;

                .red {
                    color: #ff0000;
                }
            }
        }
    }

    .reservation-form {
        position: fixed;
        z-index: 12;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;

        .animation-c {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;

        }

        .center-form-container {
            position: fixed;
            top: 0;
            bottom: 0;
            right: 0;
            left: 0;
            z-index: 18;

            .back-icon {
                position: absolute;
                top: 5/10rem;
                left: 5/10rem;
                z-index: 2;
                width: 10/10rem;
                height: 10/10rem;
                background-color: #fff;
                border-radius: 100%;
                display: flex;
                align-items: center;
                justify-content: center;
                box-shadow: 0 6px 15px rgba(36, 37, 38, 0.08);

                .icon-wrap {
                    width: 5/10rem;
                }
            }
            .expert-cover {
                width: 100%;
                height: 100%;
                @r-headerLight();
            }

            .form-container {
                position: absolute;
                bottom: 3/10rem;
                left: 3/10rem;
                right: 3/10rem;
                .content {
                    overflow: hidden;
                    padding: 5/10rem 4/10rem;
                    box-shadow: 0 6px 15px rgba(36, 37, 38, 0.38);
                    border-radius: 1/10rem;
                    background-color: #fff;

                    .title {
                        white-space: nowrap;
                        font-size: 5/10rem;
                        overflow: hidden;

                        .position,
                        .name {
                            display: inline-block;
                            line-height: 1;
                            overflow: hidden;
                            vertical-align: baseline;
                        }

                        .name {
                            font-weight: bold;
                            color: #4d545e;
                            letter-spacing: .3/10rem;
                            line-height: 8/10rem;
                            height: 8/10rem;
                            border-bottom: 1px solid #4d545e;
                        }
                        .position {
                            display: block;
                            font-size: 3.5/10rem;
                            span {
                                display: inline-block;
                            }
                        }

                    }

                    .info {
                        line-height: 1.3;
                        font-size: 3.5/10rem;
                        color: #777;
                        padding-top: 1.5/10rem;
                        padding-bottom: 3/10rem;
                        span {
                            display: inline-block;
                        }
                    }
                }

                .field-wrap {
                    padding-top: 1/10rem;

                    .error-text {
                        font-size: 3/10rem;
                        height: 3.5/10rem;
                        padding-top: .5/10rem;
                        color: #cc0100;
                    }
                    .field-input {
                        border: 1px solid #c0c4c7;
                        border-radius: 1/10rem;
                        //margin: 0 auto;
                        white-space: nowrap;
                        overflow: hidden;

                        .field-icon {
                            position: absolute;
                            left: 0;
                            top: 0;
                            bottom: 0;
                            width: 8/10rem;
                            font-size: 4/10rem;
                            color: #8a8a8a;
                            z-index: 2;
                            display: flex;
                            align-items: center;
                            justify-content: center;
                        }
                        .input-el {
                            display: flex;
                            align-items: center;
                            width: 100%;
                            height: 9/10rem;
                            font-size: 3.8/10rem;
                            color: #4d545e;
                            padding: 1/10rem 1/10rem 1/10rem 8.5/10rem;

                            &.pl {
                                color: #999999;
                            }
                        }
                    }
                }

                .button {
                    display: inline-block;
                    color: #ffffff;
                    @r-headerLight();
                    height: 10.25/10rem;
                    line-height: 10.25/10rem;
                    font-size: 5/10rem;
                    width: 30/10rem;
                    border-radius: 2/10rem;
                }
                .button-group {
                    padding-top: 2/10rem;
                    text-align: center;
                }
            }

        }
    }
}
